home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 2002 November / SGI Freeware 2002 November - Disc 2.iso / dist / fw_glimpse.idb / usr / freeware / src / glimpse-3.0 / index / index.chronicle.z / index.chronicle
Text File  |  1997-09-09  |  4KB  |  68 lines

  1. /* Copyright (c) 1994 Sun Wu, Udi Manber, Burra Gopal.  All Rights Reserved. */
  2. Started in Aug 1993.
  3. 0. bgopal: The new indexing mechanism is totally different from the original one
  4.    (written by udi and sun wu) -- the only thing common between the two is the
  5.    format of the index and the partitioning algorithm (v. simple algo).
  6. 1. Changed pirs.c/main()/line16 to make argc>1 check before accessing argv.
  7. 2. Added a leading bit in the index values to distinguish them from the next
  8.    word. This was mentioned but never implemented (comment in build_in.c).
  9. 3. Removed simple binary file and uuencoded file testing from filetype.c and
  10.    put it into a new file simpletest.c so that the compress module can use
  11.    it too.
  12. 4. Removed tolower in getword() so that I can index Linear, LINEAR and linear
  13.    depending on the relative frequency. Else, compression becomes a problem.
  14. 5. Added case-check (allupper, alllower, onlyfirstupper-restlower) routine
  15.    to getword() in getword.c -- does this only in case '-c' was specified.
  16. 6. Modified insert_h() and insert_index() procedures in build_in.c to store
  17.    the count of words rather than the partition numbers if CountWords == ON.
  18. 7. Modified pirs.c to take the option -c for CountWords instead of gathering
  19.    partition information (i.e., when we don't want .index_list for searching
  20.    but for the EXACT frequency of occurrence of different words).
  21. 8. Modified merge_in.c to merge counts of similar words occurring in two
  22.    different files rather than the partition numbers: the output of build_in
  23.    when the CountWords option is set is: a word followed by end-of-word-mark
  24.    followed by a list of (fprintf, not fwrite) counts separated by blanks,
  25.    ended with a newline.
  26. 9. Changed the files "everywhere" to account for malloc-failures (try again
  27.    after purging the hash-table once: if fail again, THEN exit).
  28. A. Changed the algorithm for build_hash -- it did not index all files.
  29.    Block-copied the code in the inner while loop after the loop-terminates.
  30. B. Removed leading bit! Now sort gave problems on partiton#0, so ignored
  31.    partition#0 altogether like partition#'\n' was ignored to figure out the
  32.    end of the current input line/word.
  33. C. Removed all references to pirs everywhere: it is now "glimpse" -- 1/28/94.
  34. D. Bug fixes relating to $HOME not being there in the environment.
  35. E. Bug fix related to "very small directories" (partitioning algorithm).
  36. F. Fixed BIG bug related to memory leaks which can cause aborts... not sure if
  37.    this was the reason for deadlocks (schwartz's bug) but ran ok for 280MB.
  38. G. Fixed a bug related to very small indices (with one partition only). 
  39. H. Added a facility to have one file per block, i.e., each file is in one
  40.    partition all by itself: a MAJOR change was done to many data-structures and
  41.    encode/decode functions were added so that sort/gets don't get confused.
  42.    -- bg, 23-30 Mar 1994
  43. I. In fast index, the old index may be destroyed and built again. In add to
  44.    index, it is never destroyed: things to it are only added. In add to index,
  45.    the old guys are NOT checked for modification, etc, and all the new ones are
  46.    added. Whereas in FastIndex, even the new ones are checked for modification
  47.    date. In both, non-existent files are removed but the holes are not filled.
  48.    The fastest way to add a new set of files is to use -f. This is same as
  49.    saying -f AND -a except that the old index is never rebuilt with -a. (The
  50.    index MIGHT need rebuilding if it was not found or partitions overflowed.)
  51.    (Does this make sense? :-)
  52.    -- bg, 20-22 Apr 1994
  53. J. Changed STAT, MESSAGE, LOG (filenames) to STATFILE, MESSAGEFILE, LOGFILE
  54.    to avoid name clashes with some C-lib variables.
  55.    -- bg, 29 Apr 1994
  56. K. Changed dir.c and partition.c to take care of absolute path names on the
  57.    command line itself: now, everything on the command line is forced to be
  58.    indexed (esp. symlinks which were excluded by default earlier).
  59.    -- bg, 2 May 1994
  60. L. Increased maximum number of files that can be indexed to 254*254 = 64516.
  61.    -- bg, 4 May 1994
  62. M. Added ability to index structured files during June/July 1994.
  63. N. Added ability to index compressed files, and automatically create compress
  64.    dictionaries (for cast) with -z option during Aug 1994.
  65. O. Added user option -i to make include have higher priority than exclude
  66.    during Aug 1994.
  67. P. Completed incremental indexing support during June 1995
  68.